home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / cocktail / front.lha / front / m2c / Makefile < prev    next >
Makefile  |  1992-08-18  |  4KB  |  222 lines

  1. LIB    = $(HOME)/lib
  2. OPT    = -O
  3. CC    = cc
  4.  
  5.                 # C library (reuse)
  6. REUSE    = ../../reuse/m2c
  7.  
  8.                 # C libraries
  9. CLIBS    = $(REUSE)/libreuse.a
  10.  
  11.                 # options for C compiler
  12. CFLAGS    = -w -I$(REUSE) $(OPT)
  13.  
  14. MFLAGS    = -c
  15.  
  16. OBJS    = Actions.o Character.o Checks.o Errors.o Limits.o \
  17.       Listing.o Oper.o Pars.o Parser.o Path.o Rules.o Scanner.o \
  18.       SysError.o TokenTab.o Tokens.o WriteTok.o
  19.  
  20. all    : libfront.a
  21.  
  22. install:    Scanner.Tab Parser.Tab ErrorTab libfront.a $(LIB)/lalr
  23.     cp Scanner.Tab Parser.Tab ErrorTab $(LIB)/lalr
  24.     chmod a+r $(LIB)/lalr/*Tab
  25.  
  26. libfront.a    : $(OBJS)
  27.     ar cu libfront.a $(OBJS)
  28.     ranlib libfront.a
  29.  
  30. # installation directories
  31.  
  32. $(LIB)/lalr:    $(LIB)
  33.     sh -c "if test ! -d $(LIB)/lalr; then mkdir $(LIB)/lalr; else true; fi"
  34.  
  35. # swap all byte pairs of the files Scanner.Tab and Parser.Tab
  36.  
  37. bin.conv:
  38.     dd conv=swab < Scanner.Tab > .Scanner.Tab; mv .Scanner.Tab Scanner.Tab
  39.     dd conv=swab < Parser.Tab > .Parser.Tab; mv .Parser.Tab Parser.Tab
  40.  
  41.  
  42. # HEAD
  43.  
  44. sources    : Actions.h
  45. Actions.h    : TokenTab.h
  46.  
  47. sources    : Actions.c
  48. Actions.o    : Actions.c Actions.h
  49. Actions.o    : TokenTab.h
  50. Actions.o    : WriteTok.h
  51.  
  52. sources    : Character.h
  53.  
  54. sources    : Character.c
  55. Character.o    : Character.c Character.h
  56.  
  57. sources    : Checks.h
  58.  
  59. sources    : Checks.c
  60. Checks.o    : Checks.c Checks.h
  61. Checks.o    : SysError.h
  62. Checks.o    : Errors.h
  63.  
  64. sources    : Errors.h
  65.  
  66. sources    : Errors.c
  67. Errors.o    : Errors.c Errors.h
  68. Errors.o    : Listing.h
  69. Errors.o    : SysError.h
  70. Errors.o    : TokenTab.h
  71.  
  72. sources    : Limits.h
  73.  
  74. sources    : Limits.c
  75. Limits.o    : Limits.c Limits.h
  76.  
  77. sources    : Listing.h
  78.  
  79. sources    : Listing.c
  80. Listing.o    : Listing.c Listing.h
  81.  
  82. sources    : Oper.h
  83. Oper.h    : TokenTab.h
  84.  
  85. sources    : Oper.c
  86. Oper.o    : Oper.c Oper.h
  87. Oper.o    : TokenTab.h
  88. Oper.o    : Errors.h
  89.  
  90. sources    : Pars.c
  91. all    : Pars
  92. Pars.o    : Pars.c
  93. Pars.o    : WriteTok.h
  94. Pars.o    : Character.h
  95. Pars.o    : Path.h
  96. Pars.o    : Checks.h
  97. Pars.o    : Errors.h
  98. Pars.o    : Parser.h
  99. Pars.o    : Scanner.h
  100. Pars.o    : TokenTab.h
  101.  
  102. sources    : Parser.h
  103.  
  104. sources    : Parser.c
  105. Parser.o    : Parser.c Parser.h
  106. Parser.o    : Scanner.h
  107. Parser.o    : Errors.h
  108. Parser.o    : Actions.h
  109. Parser.o    : Errors.h
  110. Parser.o    : Oper.h
  111. Parser.o    : Scanner.h
  112. Parser.o    : TokenTab.h
  113. Parser.o    : Tokens.h
  114. Parser.o    : Rules.h
  115.  
  116. sources    : Path.h
  117.  
  118. sources    : Path.c
  119. Path.o    : Path.c Path.h
  120.  
  121. sources    : Rules.h
  122. Rules.h    : TokenTab.h
  123.  
  124. sources    : Rules.c
  125. Rules.o    : Rules.c Rules.h
  126. Rules.o    : TokenTab.h
  127. Rules.o    : Errors.h
  128.  
  129. sources    : Scanner.h
  130. Scanner.h    : Rules.h
  131.  
  132. sources    : Scanner.c
  133. Scanner.o    : Scanner.c Scanner.h
  134. Scanner.o    : Checks.h
  135. Scanner.o    : Limits.h
  136. Scanner.o    : WriteTok.h
  137. Scanner.o    : Errors.h
  138.  
  139. sources    : SysError.h
  140.  
  141. sources    : SysError.c
  142. SysError.o    : SysError.c SysError.h
  143. SysError.o    : Errors.h
  144.  
  145. sources    : TokenTab.h
  146.  
  147. sources    : TokenTab.c
  148. TokenTab.o    : TokenTab.c TokenTab.h
  149. TokenTab.o    : Errors.h
  150.  
  151. sources    : Tokens.h
  152. Tokens.h    : TokenTab.h
  153.  
  154. sources    : Tokens.c
  155. Tokens.o    : Tokens.c Tokens.h
  156. Tokens.o    : TokenTab.h
  157. Tokens.o    : TokenTab.h
  158. Tokens.o    : Errors.h
  159.  
  160. sources    : WriteTok.h
  161.  
  162. sources    : WriteTok.c
  163. WriteTok.o    : WriteTok.c WriteTok.h
  164. WriteTok.o    : TokenTab.h
  165.  
  166. SYSTEM_.o    : SYSTEM_.c SYSTEM_.h
  167.  
  168. Pars    : $(SYSTEM)    \
  169.     Pars.o    \
  170.     TokenTab.o    \
  171.     Errors.o    \
  172.     SysError.o    \
  173.     Listing.o    \
  174.     Scanner.o    \
  175.     WriteTok.o    \
  176.     Limits.o    \
  177.     Checks.o    \
  178.     Rules.o    \
  179.     Parser.o    \
  180.     Tokens.o    \
  181.     Oper.o    \
  182.     Actions.o    \
  183.     Path.o    \
  184.     Character.o    \
  185. ;    $(CC) $(CFLAGS) -o Pars $(SYSTEM)    \
  186.     Pars.o    \
  187.     TokenTab.o    \
  188.     Errors.o    \
  189.     SysError.o    \
  190.     Listing.o    \
  191.     Scanner.o    \
  192.     WriteTok.o    \
  193.     Limits.o    \
  194.     Checks.o    \
  195.     Rules.o    \
  196.     Parser.o    \
  197.     Tokens.o    \
  198.     Oper.o    \
  199.     Actions.o    \
  200.     Path.o    \
  201.     Character.o    \
  202.     $(CLIBS)
  203.  
  204. # TAIL
  205.  
  206. clean    :
  207.     rm -f core *.o
  208.  
  209. CLEAN    :
  210.     rm -f core *.o libfront.a
  211.  
  212. .SUFFIXES: .md .mi .h .c .o
  213.  
  214. .mi.c:
  215.     mtc $(MFLAGS) $*.mi;
  216.  
  217. .md.h:
  218.     mtc $(MFLAGS) $*.md;
  219.  
  220. .c.o:
  221.     $(CC) $(CFLAGS) -c $*.c;
  222.